.selectFullWidth {
  width: 100%;
}

.checkboxGroupColumn {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.equalHeightCard {
  height: 100%;
}

.debugInfo {
  margin-top: 8px;
  font-size: 12px;
  color: #888;
}

.componentGroup {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 16px;
}

.componentGroupTitle {
  font-weight: 500;
  color: #1f2937;
}

.tagContainer {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.layoutOption {
  width: 100%;
  padding: 0;
  height: 100%;
  border: none;
  background: transparent;
}

.layoutOptionContent {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 8px;
  height: 100%;
  padding: 12px;
  border: 1px solid #d9d9d9;
  border-radius: 8px;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
  background-color: #fff;
}

.layoutOption:hover .layoutOptionContent {
  border-color: #1890ff;
  box-shadow: 0 4px 12px rgba(24, 144, 255, 0.15);
}

.layoutOptionLabel {
  font-size: 14px;
  color: #333;
  text-align: center;
  font-weight: 500;
}

.layoutIcon {
  display: flex;
  width: 100%;
  height: 72px;
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  background-color: #fafafa;
  overflow: hidden;
}

.layoutOptionSelected .layoutOptionContent {
  border-color: #1890ff;
  box-shadow: 0 0 0 2px rgba(24, 144, 255, 0.2);
}

.sidebarLayout {
  flex-direction: column;
}

.sidebarLayoutHeader {
  height: 16px;
  background-color: #e6f7ff;
}

.sidebarLayoutBody {
  display: flex;
  flex: 1;
}

.sidebarLayoutSidebar {
  width: 24%;
  background-color: #ffd666;
}

.sidebarLayoutContent {
  flex: 1;
  background-color: #fff1b8;
}

.headerFooterLayout {
  flex-direction: column;
}

.headerFooterHeader {
  height: 16px;
  background-color: #bae7ff;
}

.headerFooterContent {
  flex: 1;
  background-color: #fffbe6;
}

.headerFooterFooter {
  height: 16px;
  background-color: #ffd8bf;
}

.tabLayout {
  flex-direction: column;
}

.tabLayoutHeader {
  display: flex;
  gap: 8px;
  padding: 8px;
  background-color: #f0f5ff;
}

.tabLayoutTab1,
.tabLayoutTab2 {
  flex: 1;
  height: 12px;
  background-color: #adc6ff;
}

.tabLayoutContent {
  flex: 1;
  background-color: #fff1f0;
}

.singlePageLayout {
  background-color: #e6fffb;
}

.customLayout {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
  gap: 4px;
  padding: 8px;
  background-color: #f5f5f5;
}

.customLayoutBlock1,
.customLayoutBlock2,
.customLayoutBlock3,
.customLayoutBlock4 {
  height: 16px;
  background-color: #d9d9d9;
}
